package cn.wolfcode.crm.mapper;

import cn.wolfcode.crm.domain.Member;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

public interface MemberMapper extends BaseMapper<Member>{


    void changeState(Long id);

    void changePassword(@Param("id") Long id,@Param("newpassword") String newpassword);

    //通过会员卡号查询会员信息
    Member queryByCardno(Long cardno);

    //兑换更新积分
    void updatePointsChange(@Param("cardno") Long cardno, @Param("points") Long points);

    void changeBalance(@Param("id") Long id, @Param("balance") BigDecimal amountafter);
    /**
     * 查询今日生日会员数
     * @return
     */
    int queryTodayBirthNumber();

    /**
     * 查询本月剩余生日会员数
     * @return
     */
    int queryOtherBirthNumber();

    /**
     * 查询所有会员卡内余额
     * @return
     */
    BigDecimal queryTotalBalance();

    /**
     * 查询所有会员总消费
     * @return
     */
    BigDecimal queryTotalSpend();

    /**
     * 查询消费前三的会员
     * @return
     */
    List<Member> queryTop3Member();

    /**
     * 会员补卡
     * @param id
     * @param cardno
     */
    void changeCardno(Long id, Long cardno);
}